草庐IT

OpenSSL 证书

全部标签

java - Kubernetes:将证书填充到 keystore 中

我猜您已经部署了一个使用证书来创建tls/https通信的服务。因此,我需要部署必须信任这些证书的java客户端容器。然而,java会在信任库中查找以检查证书是否有效。如您所见,我无法使用这些证书创建图像,因为它们在构建时是未知的。我的意思是,由于/var/run/secrets/kubernetes.io/certs/tls.crt,我无法创建这种Dockerfile片段>不在构建时。RUNkeytool-import-aliasvault-storepasschangeit-keystoretruststore.jks-noprompt-trustcacerts-file/var/

java - 在 Java 中使用 openssl 加密

我有一个遗留的C++模块,它使用openssl库(DES加密)提供加密/解密。我正在尝试将该代码翻译成java,我不想依赖DLL、JNI等...C++代码如下所示:des_string_to_key(reinterpret_cast(key1),&initkey);des_string_to_key(reinterpret_cast(key2),&key);key_sched(&key,ks);//...des_ncbc_encrypt(reinterpret_cast(tmp.c_str()),reinterpret_cast(encrypted_buffer),tmp.length

使用自签名证书的 Java ssl/https 客户端

我正在尝试使用jdk版本1.6.0_32编写Javahttps客户端。我有一个已导入新信任库的自签名公共(public)证书。问题是我不断收到“线程“主”javax.net.ssl.SSLHandshakeException中的异常:握手期间远程主机关闭连接”SSL调试输出如下:C:\Users\csheets\eclispe_workspace\sdpweb\InstallSSLCert>javaTestCertkeyStoreis:keyStoretypeis:jkskeyStoreprovideris:initkeystoreinitkeymanageroftypeSunX509

java - 获取证书链

我在Java中使用X509证书。给定一个证书,是否可以在到达根证书之前找到签名层次结构中的所有其他证书?我有一个证书文件(扩展名为.cer),我想提取父签名证书。我想继续查找该证书的父级,直到获得最终的自签名根证书。我检查了java.security.cert中的X509Certificate证书API和相关API,但找不到任何有用的东西。 最佳答案 这并不难-假设您以某种方式/带外获得了一个或多个钥匙串(keychain)中的所有中间证书和根证书。看看http://codeautomate.org/blog/2012/02/cer

java - 在使用 Java 8 重新协商 TLS_1.2 期间,服务器证书更改受到限制

我是SSL的新手,并且遇到了一些看似已知的问题。我的应用程序是SSL客户端并调用另一个为双向SSL启用的组件。两个组件中的证书都是正确的,有时连接工作正常。每个服务器都有自己的服务器证书和私钥,但根证书和中间证书相同。服务器中的SSL检查在ApacheSWLB中完成。|-------------|/|Tomcat1||-------------|/|-------------||---------->|ApacheSWLB|/||-------------|\|\|\|-------------||-----------||------------|||Tomcat2||SSLClie

java - Jetty 需要 URL 的 SSL 客户端证书

我想在HTTPS站点上的Jetty中运行一个servlet,该站点只需要部分站点(特定URL)的客户端证书。例如:https://example.com/someservlet/public-无需客户证书https://example.com/someservlet/protected-需要客户证书在Apache中,我可以通过指定SSLVerifyClientrequire来完成此操作在里面或这会强制Apache在发出请求后重新协商SSL连接。我不想运行嵌入任何其他东西的Jetty,只是独立运行。这可能吗?Servlet能否以某种方式直接导致这种情况?可以通过配置完成吗?

java - 如何在 Java 中使用 X.509 证书签署 HTTP 请求?

如何使用Java执行HTTP请求并使用X.509证书对其进行签名?我通常使用C#编程。现在,我想做的是类似于以下内容,仅在Java中:privateHttpWebRequestCreateRequest(Uriuri,X509Certificate2cert){HttpWebRequestrequest=(HttpWebRequest)HttpWebRequest.Create(uri);request.ClientCertificates.Add(cert);/*...*/returnrequest;}在Java中,我创建了一个java.security.cert.X509Certi

java - 如何知道哪个 X509 证书签署了另一个证书(Java)

在我的示例中有三个证书,假设它们形成一个链,但我还不知道它们中的哪一个签署了哪个:X509Certificatec1=....X509Certificatec2=....X509Certificatec2=....我想知道哪个证书负责签署另一个证书。计划是获取“AuthorityKeyIdentifier”并将其与“SubjectKeyIdentifier”匹配。importorg.bouncycastle.asn1.DEROctetString;privatestaticStringdecodeKey(byte[]e){DEROctetStringoctet=newDEROctetS

java - Apache HttpClient 和 PEM 证书文件

我想以编程方式访问需要客户端证书的站点,我在PEM文件中拥有该证书。在此应用程序中,如果可以避免,我不想将它们添加到我的keystore、使用keytool或openssl。我需要直接在代码中处理它们。HttpClienthttpclient=newDefaultHttpClient();HttpGethttpget=newHttpGet("https://my.secure.site.com/url");//TODO:Specifyca.pemandclient.pemhere?HttpResponseresponse=httpclient.execute(httpget);Http

java - 具有自己的证书颁发机构的 Cassandra SSL

我想设置我自己的CA以用于cassandra集群,这样我就不必在每次添加新节点时都复制所有证书。我已经阅读了一些关于Cassandra和SSL的教程,但它们都与复制证书有关。我在CA过程中有点迷茫这是我认为我需要做的创建CA一次为每个节点创建一个CSR,然后用我的CA对每个节点进行签名(->另存为nodeX.crt)将node0.crt导入到我的cassandranode0keystore,将node1.crt导入到node1keystore等现在:我需要向信任库添加任何内容吗?我需要对CA文件做些什么吗?将其复制到每个客户端/节点服务器?我需要为我的java客户端提供什么文件?cql